using System;
using System.Collections.Generic;
using BCW.Friends;

public class DefaultGameMode : IRoundBasedGameMode
{
	private TypeGame _gameType = TypeGame.Unknown;

	public TypeGame GameType
	{
		get
		{
			return _gameType;
		}
		set
		{
			if (_gameType != TypeGame.Unknown)
			{
				throw new InvalidOperationException();
			}
			_gameType = value;
		}
	}

	public virtual bool IsAutoStart()
	{
		return false;
	}

	public virtual bool CanStartNow()
	{
		return false;
	}

	public virtual void StartRound()
	{
	}

	public virtual void RestartRound()
	{
		if (PhotonNetwork.room != null)
		{
			PhotonNetwork.room.visible = true;
		}
		PVPManager.instance.endOfRound = false;
	}

	public virtual void EndRound()
	{
	}

	public virtual string GameModeTitle()
	{
		return FriendInfoUI.GetGameModeName(GameType);
	}

	public virtual string EndGameModeTitle()
	{
		return "None";
	}

	public virtual TDMResult GetRoundResult()
	{
		return TDMResult.Draw;
	}

	public virtual List<PlayersInfoScroll.PlayerInfoPanelParams> GetPlayersList<T>(Func<T, bool> filter) where T : class
	{
		return new List<PlayersInfoScroll.PlayerInfoPanelParams>();
	}

	public virtual PlayersScrollType TypeOfScrollForGameMode()
	{
		return PlayersScrollType.Deathmatch;
	}
}
